#ifndef	TFGENERATOR_H_
#define	TFGENERATOR_H_


#include <cstdlib>
#include <stdio.h>
#include <string.h>
#include <list>

#include "types.h"


using namespace std; 
class MREAgent;
class TFGenerator
{
public:
	TFGenerator(){}
	TFGenerator(MREAgent* p, int an, int od, taskspec_t& spec){} 
	virtual void learn(const Transition* t)=0; 
	virtual Observation predict(Observation st, Action a)=0; 
	virtual double getConfidence(Observation st, Action a){return 0;} 
	virtual void batchLearn(std::list<Transition>& history)=0; 
	virtual void save(){}
}; 

#endif

